Imaging devices are found in a vast number of computer networks and personal computer setups. Imaging devices include printers, facsimile machines (faxes), plotters, multi-function devices and other devices used for producing a tangible image from image data.
The image data is typically generated by some user application in a device external to the imaging device. An example includes composing a document in a word-processing application of a computer workstation, generating image data in the word-processing application and communicating the image data to a networked or local printer to produce a hard copy of the document.
For communications efficiency, the image data is generally provided to the imaging device in a compressed form. The compressed form may be simply a compression of raster data, but is more commonly a high-level page description language (PDL) providing information to the imaging device on how to recreate the image. These PDLs are often device-independent languages, i.e., the same image data can be provided to devices of differing types and/or differing manufacturers to produce an end result that is substantially the same. Examples of PDLs include Printer Command Language or PCL (Hewlett-Packard Company, Palo Alto, Calif. USA), PostScript® (Adobe Systems Incorporated, San Jose, Calif. USA) and Interpress (Xerox Corporation, Stamford, Conn. USA).
To process these PDLs, imaging devices have what is often referred to as a formatter. The formatter has a processor that is responsive to a control program to convert the image data to a printable image. The control program typically provides interpretation of the PDLs, character generation, device emulation, etc. The printable image is typically uncompressed raster or bitmap information that is supplied to another component of the imaging device, often referred to as an engine. The engine controls the mechanical components of the imaging device to produce a tangible output, such as a hardcopy of the printable image.
The control programs responsible for conversion of the image data are often referred to as formatter firmware or simply firmware. Firmware is computer-readable instructions adapted to cause the processor to perform the conversion methods. These instructions are generally stored on a nonvolatile computer-usable medium. Some examples of nonvolatile computer-usable media include read-only memory (ROM), electrically-erasable programmable ROM (EEPROM or Flash memory), magnetic media and optical media. Because of the cost and access rates of nonvolatile memory in comparison to dynamic random access memory (DRAM; a volatile storage media), the control programs are typically stored on the nonvolatile media in a compressed form, then expanded and transferred to a volatile media for use by the processor. This approach reduces the amount of nonvolatile media that must be installed in the imaging device, thus reducing cost, and increases the access rate of the instructions by the processor, thus improving device performance.
For the reasons stated above, and for other reasons stated below that will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for alternative approaches facilitating reduction of the amount of nonvolatile storage media in imaging devices.